package com.inspur.dgov.bsp.application.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 应用信息表
 *
 * @author chiyupei
 * @version 1.0
 * @since 1.0
 */
@Data
@TableName("pub_app")
@ApiModel(value="PubApp对象", description="应用信息表")
public class PubApp implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "应用ID")
    @TableId("ID")
    private Long id;

    @ApiModelProperty(value = "应用编码")
    @TableField("CODE")
    private String code;

    @ApiModelProperty(value = "应用名称")
    @TableField("NAME")
    private String name;

    @ApiModelProperty(value = "应用简称")
    @TableField("SHORT_NAME")
    private String shortName;

    @ApiModelProperty(value = "应用图标")
    @TableField("ICON")
    private String icon;

    @ApiModelProperty(value = "应用类型(1:业务应用 2:应用支撑 3:协作组件)")
    @TableField("TYPE")
    private String type;

    @ApiModelProperty(value = "应用类别(0:系统应用 1:自建应用)")
    @TableField("KIND")
    private String kind;

    @ApiModelProperty(value = "前后台应用(0:前台应用 1:后台应用)")
    @TableField("IS_BACK")
    private String isBack;

    @ApiModelProperty(value = "是否进行权限控制(0:否 1:是)")
    @TableField("IS_POWER")
    private String isPower;

    @ApiModelProperty(value = "排序")
    @TableField("SORT_ORDER")
    private Integer sortOrder;

    @ApiModelProperty(value = "状态(1:有效 0:无效)")
    @TableField("STATUS")
    private String status;

    @ApiModelProperty(value = "应用说明")
    @TableField("REMARK")
    private String remark;

    @ApiModelProperty(value = "创建者ID")
    @TableField("CREATOR")
    private Long creator;

    @ApiModelProperty(value = "创建时间")
    @TableField("CREATE_TIME")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;

    @ApiModelProperty(value = "更新者ID")
    @TableField("UPDATOR")
    private Long updator;

    @ApiModelProperty(value = "更新时间")
    @TableField("UPDATE_TIME")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updateTime;


}
